package com.automation.ljf.service;

import com.automation.ljf.domain.request.CaseRequest;
import com.automation.ljf.domain.request.CaseStepRequest;
import com.automation.ljf.util.ResultMessage;

import java.util.List;

/**
 * 基础操作接口
 *
 * @author lijiefeng
 * @since 2021/8/25
 */
public interface TestUseCaseService {

    ResultMessage createCase(CaseRequest caseRequest);

    ResultMessage createCaseStep(CaseStepRequest caseStepRequest);

    ResultMessage selectCaseByUId(String admUserId, Integer page, Integer limit);

    ResultMessage selectCaseByCaseId(String caseId);

    ResultMessage ExecuteCaseByCaseId(String caseId, String jsonData);

    ResultMessage selectStepByCaseId(String caseId, Integer page, Integer limit);

    ResultMessage selectStepIsInputByCaseId(String caseId);

    ResultMessage selectCaseReportByUId(String admUserId, Integer page, Integer limit);

    ResultMessage selectStepReportByCaseReportId(String reportId, Integer page, Integer limit);

    ResultMessage updateCaseByCaseId(CaseRequest caseRequest);

    ResultMessage deleteCaseByCaseId(List<CaseRequest> caseRequestList);

    ResultMessage deleteStepByCaseId(String caseId, List<CaseStepRequest> caseStepRequests);

}
